package com.openswimsoftware.orm.model.list;

import java.util.List;

import com.openswimsoftware.orm.model.Model;
import com.openswimsoftware.orm.model.list.query.ModelListDelete;
import com.openswimsoftware.orm.model.list.query.ModelListFind;
import com.openswimsoftware.orm.model.list.query.ModelListSave;

public interface ModelList<E extends Model<E>> extends List<E> {
	
	public void setParentId(long parentId);
	
	public long getParentId();
	
	public void setParentName(String name);
	
	public boolean getLoaded();
	
	public boolean getUpdated();
	
	public void setLoaded(boolean loaded);
	
	public String getParentName();
	
	public ModelList<E> find();
	
	public ModelListFind<E> findQuery();

	public ModelList<E> save();
	
	public ModelListSave<E> saveQuery();
	
	public boolean delete();
	
	public ModelListDelete<E> deleteQuery();
}
